import java.util.ArrayList;
import java.util.List;

public class Familia {

	private List<Pessoa> familia = new ArrayList<Pessoa>();

	public static void main(String[] args) {
		String parentesco = args[0];
		String pessoa = args[1];
		
        Familia familia = new Familia();
		familia.criarArvore();
		
		familia.analisaEntrada(parentesco, pessoa);
    }
	
	public void analisaEntrada(String parentesco, String pessoa) {
		if(parentesco.equals("pai")) {
			imprimePai(pessoa);
		} else if(parentesco.equals("irmao")) {
			imprimeIrmaos(pessoa);
		} else {
			System.out.println("Parentesco não identificado.");
		}
		
	}
	
	public void imprimePai(String nomeFilho) {
		Pessoa pai = buscaPai(nomeFilho);
		if(pai != null) {
			System.out.println("pai(" + nomeFilho + ")" + " -> " + pai.getNome());
		} else {
			System.out.println("pai(" + nomeFilho + ")" + " -> " + "Não possui");
		}
	}
	public void imprimeIrmaos(String nomePessoa) {
		List<Pessoa> irmaos = buscaIrmaos(nomePessoa);
		if(irmaos.size() != 0) {
			for(int i = 0; i < irmaos.size();i++) {
				System.out.println("irmao(" + nomePessoa + ")" + " -> " + irmaos.get(i).getNome());
			}
		} else {
			System.out.println("irmao(" + nomePessoa + ")" + " -> " + "Não possui");
		}
	}
	public Pessoa buscaPai(String nomeFilho) {
		Pessoa pai = null;
		Pessoa pesAtual = null;
		for(int i = 0; i < familia.size();i++) {
			pesAtual = familia.get(i);
			if(pesAtual.getNome().equals(nomeFilho)) {
				pai = pesAtual.getPai();
				break;
			}
		}
		return pai;
	}
	public List<Pessoa> buscaIrmaos(String nomePessoa) {
		List<Pessoa> irmaos = new ArrayList<Pessoa>();
		Pessoa pesAtual = null;
		for(int i = 0; i < familia.size();i++) {
			pesAtual = familia.get(i);
			if(pesAtual.getNome().equals(nomePessoa)) {
				irmaos = pesAtual.getIrmaos();
				break;
			}
		}
		return irmaos;
	}
    public void criarArvore()
    {
	   Pessoa p1 = new Pessoa("João", 20, 'M');
	   Pessoa p2 = new Pessoa("Maria", 18, 'F');
	   Pessoa p3 = new Pessoa("Antonio",3,'M');
	   Pessoa p4 = new Pessoa("Julia",3,'F');
	   Pessoa p5 = new Pessoa("Mariana",3,'F');
	   
	   p1.casar(p2);
	   p3.setPai(p1);
	   p3.setMae(p2);
	   p4.setPai(p1);
	   p4.setMae(p2);
	   p5.setPai(p1);
	   p5.setMae(p2);
	   
	   familia.add(p1);
	   familia.add(p2);
	   familia.add(p3);
	   familia.add(p4);
	   familia.add(p5);
    }
}
